import { Message, MessageBox, Notification } from 'element-ui';

let _common = {};

_common = {
  MessageError: MessageError,
  MessageInfo: MessageInfo,
  MessageSuccess: MessageSuccess,
  MessageWarning: MessageWarning,
  MessageBoxQuestion: MessageBoxQuestion,
  MessageBoxSuccess: MessageBoxSuccess,
  MessageBoxInfo: MessageBoxInfo,
  MessageBoxError: MessageBoxError,
  Notice: notice
};

export default _common;

export function MessageError(text = '错误') {
  Message({
    message: text,
    type: 'error',
    duration: 3 * 1000
  });
}
export function MessageInfo(text = '取消') {
  Message({
    message: text,
    type: 'info',
    duration: 3 * 1000
  });
}
export function MessageSuccess(text = '成功') {
  Message({
    message: text,
    type: 'success',
    duration: 3 * 1000
  });
}

export function MessageWarning(text = '警告') {
  Message({
    message: text,
    type: 'warning',
    duration: 3 * 1000
  });
}

export function MessageBoxQuestion(text = 'Box询问') {
  return MessageBox.confirm(text, '提示', {
    confirmButtonText: '确定',
    cancelButtonText: '取消',
    type: 'warning'
  }).catch(err => {});
}

export function MessageBoxSuccess(text = 'Box成功') {
  return MessageBox.confirm(text, '提示', {
    confirmButtonText: '确定',
    cancelButtonText: '取消',
    type: 'success'
  }).catch(err => {});
}

export function MessageBoxInfo(text = 'Box取消') {
  return MessageBox.confirm(text, '提示', {
    confirmButtonText: '确定',
    cancelButtonText: '取消',
    type: 'info'
  }).catch(err => {});
}

export function MessageBoxError(text = 'Box错误') {
  return MessageBox.confirm(text, '提示', {
    confirmButtonText: '确定',
    cancelButtonText: '取消',
    type: 'error'
  }).catch(err => {});
}

/**
 * 消息提示，右边弹出
 */
export function notice(title, msg, type, time) {
  Notification({
    title: title || '消息',
    message: msg,
    type: type || 'success',
    duration: time || 2000
  });
}

//将message改成模态窗口+遮罩层
export function msgWaring(text = 'Box') {
  MessageBox.confirm(text, '提示', {
    type: 'warning',
    showCancelButton: false,
    showConfirmButton: false
  })
    .then(() => {})
    .catch(() => {});
}
